Device driver和hardware溝通的interface是hardware內部的control register
Device driver會根據hardware control register spec操作 (read/write)control register
來跟hardware溝通。
Device driver會提供API讓kernel呼叫,作為kernel與hardware溝通的介面,讓kernel可以獲得hardware的服務
Device driver會將一連串複雜的hardware操作設計成API,使hardware的細節被包裝起來
Device driver會保持API的一致性,當hardware有變動的時候只需要更改device driver,就可以繼續服務kernel
例如: PMU driver提供給kernel計算event發生次數的API可以在PMU hardware設計改動時保持不變,kerne就不需要更改使用PMU的source code